Information extraction from question and answer websites

ABSTRACT

Methods, systems, and apparatus for obtaining a resource, identifying a first portion of text of the resource that is characterized as a question, and a second part of text of the resource that is characterized as an answer to the question, identifying an entity that is referenced by one or more terms of the text that is characterized as the question, a relationship type that is referenced by one or more other terms of the text that is characterized as the question, and an entity that is referenced by the text that is characterized as the answer to the question, and adjusting a score for a relationship of the relationship type for the entity that is referenced by the one or more terms of the text that is characterized as the question and the entity that is referenced by the text that is characterized as the answer to the question.

TECHNICAL FIELD

This specification relates to search engines, and one particularimplementation relates to extracting information from webpages or otherweb-based resources.

BACKGROUND

In general, a question and answer (Q&A) website can enable a user tosolicit answers to a question. The Q&A website can include a webpagethat includes both the question submitted by the user, as well as ananswer to the question that has been submitted by another user of theQ&A website or an answer to the question that has been provided by othersources.

SUMMARY

A webpage of a Q&A website can be used as a resource to determinerelationships between entities that are identified by the question andanswer presented at the webpage. For example, a computer system selectsa webpage from a Q&A website that includes the question, “Who is BarackObama married to?” as well as the answer, “Michelle Obama.” A computersystem analyzes the webpage from the Q&A website to distinguish theportions of the webpage text that represent the question and the answerfrom other text on the webpage, such as advertisements, menus, headers,or other text.

A relationship type is determined based on the question text, forexample, by determining that the terms “married to” in the question textlikely indicate a spousal relationship between an entity indicated inthe question text and an entity indicated in the answer text. Entitiesare also identified from the question text and the answer text. Forexample, the computer system can identify the entity “Barack Obama” fromthe question text, and the entity “Michelle Obama” from the answer text.

Having identified a relationship type and the two entities identified bythe question and answer text, a candidate relationship is determined.For example, the determined candidate relationship may be a spousalrelationship between the entities “Barack Obama” and “Michelle Obama.”

A similar process is repeated for a corpus of webpages from Q&A websitesto generate a set of candidate relationships of a particularrelationship type for a particular entity. For example, after processinga corpus of webpages from Q&A websites, the computer system candetermine that the entity “Barack Obama” has a spousal relationship withone of the entities “Michelle Obama,” “Hillary Clinton,” or “LauraBush.”

To determine which of these candidate relationships is most likelyaccurate, the computer system aggregates the candidate relationships ofthe particular relationship type for the particular entity, and scoreseach of the candidate relationships. For example, the computer systemscores each of the candidate relationships based at least on thefrequency with which the candidate relationship was determined fromwebpages of Q&A websites.

The candidate relationship having the highest score is selected as themost likely valid relationship for the particular relationship type andentity. For example, based on determining that the candidate spousalrelationship between “Barack Obama” and “Michelle Obama” is the mostfrequently occurring spousal relationship for the entity “Barack Obama,”the computer system determines that a spousal relationship existsbetween “Barack Obama” and “Michelle Obama.” The computer system canthen establish, in an entity relationship model, a spousal relationshipbetween the entity “Barack Obama” and the entity “Michelle Obama.”

Innovative aspects of the subject matter described in this specificationmay be embodied in methods that include the actions of obtaining aresource, identifying a first portion of text of the resource that ischaracterized as a question, and a second part of text of the resourcethat is characterized as an answer to the question, identifying anentity that is referenced by one or more terms of the first portion oftext that is characterized as the question, a relationship type that isreferenced by one or more other terms of the first portion of the textthat is characterized as the question, and an entity that is referencedby the second portion of text that is characterized as the answer to thequestion, and adjusting a score associated with a relationship of therelationship type for the entity that is referenced by the one or moreterms of the first portion of text that is characterized as the questionand the entity that is referenced by the second portion of text that ischaracterized as the answer to the question.

Other embodiments of these aspects include corresponding systems,apparatus, and computer programs, configured to perform the actions ofthe methods, encoded on computer storage devices.

These and other embodiments may each optionally include one or more ofthe following features. In various examples, the resource is a questionand answer (Q&A) website resource. Identifying the relationship typethat is referenced by the one or more other terms of the first portionof the text that is characterized as the question comprises comparingthe first portion of the text that is characterized as the question toone or more templates, each template being associated with a particularrelationship type, determining that the first portion of the text thatis characterized as the question matches a particular template fromamong the one or more templates, and identifying, as the relationshiptype that is referenced by the one or more other terms of the firstportion of the text that is characterized as the question, arelationship type that is associated with the particular template. Eachof the one or more templates is one of a surface-based template or aparser-based template. The actions comprise aggregating the scoreassociated with the relationship of the relationship type for the entitythat is referenced by the one or more terms of the first portion of textthat is characterized as the question and the entity that is referencedby the second portion of text that is characterized as the answer to thequestion and one or more other scores that are each associated with therelationship of the relationship type for the entity that is referencedby the one or more other terms of the first portion of text that ischaracterized as the question and an entity that is referenced by aportion of text that is characterized as an answer to the question,comparing the score associated with the relationship of the relationshiptype for the entity that is referenced by the one or more terms of thefirst portion of text that is characterized as the question and theentity that is referenced by the second portion of text that ischaracterized as the answer to the question and the one or more otherscores that are each associated with the relationship of therelationship type for the entity that is referenced by the one or moreother terms of the first portion of text that is characterized as thequestion and an entity that is referenced by a portion of text that ischaracterized as an answer to the question, and establishing, at anentity relationship model and based at least on the comparison, arelationship of the relationship type between the entity that isreferenced by the one or more terms of the first portion of text that ischaracterized as the question and the entity that is referenced by thesecond portion of text that is characterized as the answer to thequestion. Identifying the entity that is referenced by the secondportion of text that is characterized as the answer to the questioncomprises determining an entity class for the entity that is referencedby the one or more terms of the first portion of text that ischaracterized as the question, determining a target entity class basedon the entity class for the entity that is referenced by the one or moreterms of the first portion of text that is characterized as thequestion, and the relationship type that is referenced by the one ormore terms of the first portion of text that is characterized as thequestion, and the relationship type that is referenced by the one ormore other terms of the first portion of the text that is characterizedas the question, and identifying, as the entity that is referenced bythe second portion of text that is characterized as the answer to thequestion, and entity that is referenced by the second portion of textthat is characterized as the question, and matches the target entityclass. Identifying the first portion of text of the resource that ischaracterized as the question, and the second portion of text of theresource that is characterized as the answer to the question comprisessubmitting the resource to a machine-learnt classifier that isconfigured to identify portions of text that are characterized asquestions in Q&A website resources and portions of text that arecharacterized as answers in Q&A website resources, and receiving, fromthe machine-learnt classifier, information that identifies the firstportion of text of the resource that is characterized as the question,and the second portion of text of the resource that is characterized asthe answer to the question.

The details of one or more embodiments of the subject matter describedin this specification are set forth in the accompanying drawings and thedescription below. Other potential features, aspects, and advantages ofthe subject matter will become apparent from the description, thedrawings, and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an example system for extracting entity relationshipsfrom question and answer (Q&A) websites.

FIGS. 2A and 2B illustrate example systems for extracting relationshiptypes from Q&A websites.

FIG. 3 depicts a flowchart of an example process for extracting entityrelationships from Q&A websites.

Like reference symbols in the various drawings indicate like elements.

DETAILED DESCRIPTION

FIG. 1 depicts an example system 100 for extracting entity relationshipsfrom Q&A website resources. In general, the system 100 extractsrelationships between entities from resources, such as webpages, hostedby Q&A websites. The system 100 includes an entity relationship modelthat specifies the relationships that are determined from the Q&Awebsite resources.

In some implementations, the system 100 accesses a corpus of Q&A websiteresources. For each of a number of Q&A website resources, the system 100identifies a portion of text that represents a question and anotherportion of text from the resource that represents an answer to thequestion. A particular entity and a particular relationship type aredetermined from the question text, and another entity is determined fromthe answer text. The pair of entities and the identified relationshiptype represent a candidate relationship of the identified relationshiptype between the entity identified in the question text and the entityidentified in the answer text.

The system 100 aggregates candidate relationships of the particularrelationship type for the entity determined from the question text. Fromthe aggregate set of candidate relationships, the system 100 selects aparticular candidate relationship as the most likely valid relationshipof the particular relationship type for the entity determined from thequestion text. The system 100 selects this particular candidaterelationship as being valid based on scores assigned to each of thecandidate relationships that indicates, for example, the number of Q&Awebsite resources processed by the system 100 that produced the samecandidate relationship.

The system 100 establishes a relationship of the particular relationshiptype between the entity determined from the question text and the entitydetermined from the answer text that is associated with the most likelyvalid candidate relationship. This relationship is established by thesystem 100 in the entity relationship model.

Briefly, the system 100 includes a Q&A resource database 102, a Q&Aresource selector 104, a Q&A classifier 106, a sentence parser 108, anentity identifier 110, a relationship identifier 112, an aggregator 114,a database of candidate relationships 116, a relationship selector 118,and an entity relationship model 120. Entities represented in the entityrelationship model 120 may be represented as nodes 122, withrelationships between entities being represented as edges 124.

To extract entity relationships from Q&A website resources, the system100 accesses the Q&A resource database 102 that includes multipleresources from Q&A websites. For example, resources accessible at theQ&A resource database 102 can include a number of webpages from Q&Awebsites, such as archived versions of the webpages from Q&A websites,can include metadata relating to webpages of Q&A websites, documentsaccessible at Q&A websites, images accessible at Q&A websites, videosaccessible at Q&A websites, audio accessible at Q&A websites, or otherresources associated with or accessible at Q&A websites. In someimplementations, the Q&A resource database 102 can be a resourcedatabase that includes resources from sources other than Q&A websites.For example, the Q&A resource database 102 can include one or moreresources from forum websites, social network platforms, frequentlyasked questions (FAQ) websites or FAQ webpages, informational websites,or other sources where questions and answers are available.

The Q&A resource selector 104 accesses the Q&A resource database 102 andselects a particular resource from among the corpus of resources storedat the Q&A resource database 102. For example, the Q&A resource selector104 may access the Q&A resource database 102 and select a particularwebpage hosted by a Q&A website. The system 100 then extracts acandidate relationship from particular webpage.

A webpage from a Q&A website typically includes a portion of text thatcorresponds to a question and a portion of text that corresponds ananswer to the question, where the question text and the answer text mayoccur in different sentences within text of the webpage, or withindifferent regions of the webpage. For example, a webpage selected by theQ&A resource selector 104 may display text corresponding to a questionin a first region of the webpage, and may display text corresponding toan answer to the question in a second region of the webpage, such thatthe question text and answer text occur in two different regions of thewebpage.

To identify the question text and the answer text from the resourceselected by the Q&A resource selector 104, the resource is provided toand processed by the Q&A classifier 106. The Q&A classifier processesthe resource selected from the Q&A resource database 102 to identifytext in the resource that likely corresponds to a question, and toidentify other text in the resource that likely corresponds to an answerto the question. In some examples, the Q&A classifier 106 can identifythe question and answer text based on detecting the presence of one ormore textual templates or triggers that indicate that the text likelycorresponds to a question or an answer.

For example, the Q&A classifier 106 may parse the text of the resourceand identify question or answer text based on the presence of certaincharacters or strings of characters, such as a question mark. The Q&Aclassifier 106 may parse the text of the resource for words or phrasesthat are indicative of question text, such as the words and phrases “Iwas wondering,” “I am asking,” “question,” “who,” “what,” “where,”“when,” “why,” “how,” etc. The Q&A classifier 106 may similarly parsethe text of the resource for words or phrases that are indicative ofanswer text, such as the words and phrases “I know,” “I believe,” “Ithink,” “The answer is,” “answer,” etc.

In other examples, the Q&A classifier 106 can determine the portions oftext representing the question and answer using other mechanisms, forexample, by identifying a portion of text that is likely a question, andidentifying another portion of text that appears subsequent to thequestion text in the resource as the answer text. The Q&A classifier 106can identify question or answer texts by locating text that appears in aregion of a Q&A website resource that typically corresponds to aquestion or answer. In some implementations, the Q&A classifier 106 canidentify question text or answer text by identifying portions of textthat each include a particular segment of text or sequence of words, orportions of text that include terms that are also included in text thathas been identified as likely question text or answer text, regardlessof the ordering of those terms in the different texts.

In still other implementations, the Q&A classifier 106 can identifyanswer text by locating short sentences or short segments of text in theresource, e.g., the text “Michelle Obama.” The Q&A classifier 106 mayidentify answer text as text that refers only to a single entity, e.g.,the entity “Michelle Obama.” Other techniques may be employed forlocating the portions of text corresponding to the question and theanswer in the resource selected by the Q&A resource selector 104.

In the example shown in FIG. 1, the Q&A resource selector 104 selects aparticular sample resource from among the resources stored at the Q&Aresource database 102, and identifies a first portion of text thatcorresponds to a question, and a second portion of text that correspondsto an answer to that question. As shown, the question text identified bythe Q&A classifier 106 recites “Who is Barack Obama married to?” and theanswer text identified by the Q&A classifier 106 recites “MichelleObama.”

The Q&A classifier 106 provides the text portion corresponding to thequestion and the text portion corresponding to the answer to thesentence parser 108. In some implementations, the question and answertexts are transmitted to the sentence parser 108 as text that has notbeen modified from the text selected by the Q&A classifier 106 from theresource. In other implementations, the question or answer textstransmitted to the sentence parser 108 are revised or cleaned upversions of the text selected from the resource.

The sentence parser 108 receives the question text and the answer text,and processes the question and answer texts to annotate the question andanswer texts. In some implementations, annotating the question andanswer texts involves identifying the grammatical unit types of termsand/or sequences of terms in the question and answer texts. For example,the sentence parser 108 can identify nouns, verbs, subjects, predicates,objects, prepositions, adjectives, adverbs, or other grammatical unitsfrom the question and answer texts, e.g., any combination of morphemes,words, phrases, clauses, or sentences in the question and answer texts.

Based on identifying the grammatical unit type of the various terms orsequences of terms in the question and answer texts, the sentence parser108 annotates the various terms and sequences of terms of the questionand answer text with their identified grammatical unit types.Additionally or alternatively, the sentence parser 108 generates a parsetree of the question and answer texts, where the parse tree of each ofthe question and answer texts represents the syntactic structure of thequestion or answer text.

Additionally, in some implementations, the sentence parser 108 mayidentify a class or hypernym associated with one or more of thegrammatical units detected in the question or answer text, and mayannotate the grammatical units detected in the question or answer textwith the class or hypernym. For example, a term that is identified as anoun in a portion of question text may be further identified as being a“person,” a “place,” or a “thing,” and the sentence parser 108 canannotate the term as being a noun belonging to the particular “person,”“place,” or “thing” class. The sentence parser 108 may be able toannotate the question and answer texts based on having access to one ormore dictionaries or other resources that are configured to perform oraid in performing natural language processing (NLP).

As an example, the sentence parser 108 may receive the question text,“Who is Barack Obama married to?” and may annotate the question text as“WHO/pronoun IS/verb BARACK OBAMA/noun MARRIED/adjective TO/verb?”Similarly, the sentence parser may receive the answer text “MichelleObama” and may annotate the answer text as “MICHELLE OBAMA/noun.” Thesentence parser may further determine a class or hypernym of one or moregrammatical units in the annotated texts, for example, to determine thatthe terms “Barack Obama” constitute a “person” noun class, and that theterms “Michelle Obama” also constitute a “person” noun class.

Having parsed the question and answer texts, the sentence parser 108provides the annotated question and answer texts to the entityidentifier 110 and relationship identifier 112. In alternateimplementations, the question text and/or answer text may be provided tothe entity identifier 110 and relationship identifier 112 withoutprocessing by the sentence parser 108. In such implementations, theentity identifier 110 and/or relationship identifier 112 may performoperations similar to those performed by the sentence parser 108, or mayidentify entities or relationships from the question text and/or answertext without the question text or answer text being annotated. In suchinstances, the Q&A classifier 106 can provide the question and answertexts to the entity identifier 110 and relationship identifier 112.

The entity identifier 110 and the relationship identifier 112 receivethe question text and/or answer text to identify a relationship type anda pair of entities referenced by the question text and answer text. Insome implementations, only the question text is provided to therelationship identifier 112, while both the question text and answertext are provided to the entity identifier 110. In otherimplementations, both the question text and the answer text are providedto each of the entity identifier 110 and the relationship identifier112.

The entity identifier 110 and the relationship identifier 112 canreceive question text and/or answer text that have not been annotatedfrom the Q&A classifier 106, or can receive annotated question and/oranswer texts from the sentence parser 108. Using the question textand/or answer text, the entity identifier 110 identifies entities thatare specified by the question text and the answer text as entities thatmay share some type of relationship. The relationship identifier 112uses the question text and/or answer text to determine a relationshiptype, where the relationship type indicates a potential type ofrelationship between the entities identified by the entity identifier110.

In some implementations, the entity identifier 110 receives theannotated question text and annotated answer text, and identifies anentity in each of the question text and the answer text. For example,given the question text corresponding to the question, “Who is BarackObama married to?” the entity identifier 110 can identify the entity“Barack Obama.” Similarly, given the answer text corresponding to theanswer “Michelle Obama,” the entity identifier 110 can identify theentity “Michelle Obama.”

In some implementations, the entity identifier 110 can have access tothe entity relationship model 120, and can identify entities from thequestion and answer texts that are included in the entity relationshipmodel 120. In such an implementation, the entity identifier 110 may onlybe capable of identifying entities from question and answer texts thatare represented in the entity relationship model 120. Additionally oralternatively, the entity identifier 110 may have access to one or moredatabases or other resources that identify entities, such as one or moredatabases or resources that are accessible over one or more networks. Insuch implementations, the entity identifier 110 may be capable ofidentifying from the question and answer texts those entities that areincluded in the one or more databases.

In some implementations, the entity identifier 110 may identify a newentity that is not already represented in the entity relationship model120 or the one or more other databases or resources. For example, theentity identifier may attempt to match the terms “Michelle Obama” toentities represented in the entity relationship model 120 and maydetermine that there are not any entities represented in the entityrelationship model 120 that are named “Michelle Obama.”

Based on determining that the identified entity is new, the entityidentifier 110 may add a new entity to the entity relationship model 120or the one or more other databases or resources to add the newlyidentified entity. For example, based on the entity identifier 110failing to identify an entity named “Michelle Obama” in the entityrelationship model 120, the entity identifier 110 can provideinformation to the entity relationship model 120 that creates an entitynode 122 representing the entity “Michelle Obama.”

In some implementations, the entity identifier 110 identifies entitiesby comparing terms of question text or answer text to entitiesidentified in the entity relationship model 120 or identified in anotherdatabase or resource. For example, the entity identifier 110 that hasaccess to the entity relationship model 120 may compare terms of thequestion, “Who is Barack Obama married to?” to entities included in theentity relationship model 120 to identify the entity “Barack Obama.”

Additionally or alternatively, the entity identifier 110 may compare oneor more grammatical units of annotated question text and/or answer textto the entities identified in the entity relationship model 120 toidentify potentially related entities. For example, the sentence parser108 may annotate the question text “Who is Barack Obama married to?” tothe form “WHO/pronoun IS/verb BARACK OBAMA/noun MARRIED/adjectiveTO/verb?” Thus, the entity identifier 110 may compare the noun “BarackObama” to the entities represented in the entity relationship model 120to identify an entity named “Barack Obama.”

In still other implementations, the entity identifier 110 may onlycompare a particular grammatical unit, such as the noun “Barack Obama”to other entities that are identified as being of the same class. Forexample, based on determining that the noun “Barack Obama” is of a“person” noun class, the entity identifier 110 may only compare the noun“Barack Obama” to entities in the entity relationship model 120 that areof the “person” noun class, and may not compare the noun “Barack Obama”to other entities in the entity relationship model 120 that are not ofthe “person” noun class, e.g., that are of a “place” or “thing” class.

In some implementations, the entity identifier 110 may identify two ormore entities from one of the question text or the answer text. In suchinstances, the entity identifier 110 may select the potentially relatedentities based on a class determined for each of the identifiedentities, based on a particular relationship type determined by therelationship identifier 112, or based on other factors.

For example, the entity identifier 110 may receive the question text“Who is Barack Obama married to?” and identify the entity “BarackObama,” and may receive the answer text “He lives with his wife MichelleObama at the White House” and identify the entities “Michelle Obama” and“White House.” The entity identifier 110 may determine that the entities“Barack Obama” and “Michelle Obama” are each of a “person” noun class,and that the entity “White House” is of a “place” noun class. The entityidentifier 110 may select the entities “Barack Obama” and “MichelleObama” as potentially related entities based on both entities being ofthe “person” noun class, and therefore being more likely to be relatedin some way than a particular person is to be related to a particularplace.

Alternatively, the entity identifier 110 may select the potentiallyrelated entities based on a relationship type determined by therelationship identifier 112. For example, based on the relationshipidentifier 112 identifying a spousal relationship type from the questiontext, the entity identifier 110 may select the entities “Barack Obama”and “Michelle Obama,” since they both are of the “person” noun class andare therefore more likely to be entities that have a spousalrelationship than are entities of different classes or entities of a“place” or “thing” class. However, in another example, if therelationship identifier 112 determined a “residence” relationship type,the entity relationship engine 110 may identify “Barack Obama” and“White House” as the related entities, since the entity “Barack Obama”of a “person” noun class is most likely to have a residence relationshipwith a “place” noun class.

The relationship identifier 112 also receives the annotated questiontext and/or the annotated answer text from the sentence parser 108, andidentifies a relationship type for the candidate relationship betweenthe entities identified by the entity identifier 110 based on theannotated question text and/or annotated answer text. To determine arelationship type, the relationship identifier 112 may employ one of atemplate-based extractor or a classifier-based extractor, for example, amaximum entropy-based extractor. Discussed briefly here, thetemplate-based extractor is discussed in additional detail at FIG. 2A,and the classifier-based extractor is discussed in additional detail atFIG. 2B.

In some implementations, the relationship identifier 112 has access toone or more databases or other resources that store templates that areeach associated with a particular relationship type. The relationshipidentifier 112 may utilize a template-based extractor to determine arelationship type from the question text received from the sentenceparser 108 or Q&A classifier 106. Various relationship types may beacknowledged by the relationship identifier 112, including spousalrelationships, familial relationships, political relationships, businessrelationships, ownership relationships, residence relationships, birthplace relationships, employee/employer relationships, occupationalrelationships, or other relationships between people, places, or things.

For example, the relationship identifier 112 may determine relationshipsbetween particular entities and numerical values or dates. Suchnumerical values may include, for instance, a relationship between aperson and a particular numerical value, such as the person's age, networth, jersey number, height, etc. Similarly, dates may be associatedwith a particular person, such as a date of birth, marriage date, dateof death, etc. Numerical values and dates may be associated with otherentity classes. For example, a company entity may be associated with adate of founding, a city with a population size, etc.

The relationship identifier 112 includes a matcher that determineswhether a match exists between particular question text and a particulartemplate accessible by the relationship identifier 112. For example, therelationship identifier 112 can compare the question text “Who is BarackObama married to?” and determine that it matches a template of the form“Who is [PERSON] married to?” that is associated with a spousalrelationship type. Based on determining the match between the questiontext and the particular template, the relationship identifier 112 canselect, as the relationship type represented by the question text, theparticular relationship type that is associated with the matchedtemplate.

The relationship identifier 112 may be capable of accessing twodifferent types of templates, including surface-based templates andparser-based templates. Surface-based templates correspond to questiontext that has not been annotated and include placeholders that arefillable with other terms from question text, e.g., terms representingentities identified by the entity identifier 110. For example, thetemplate “Who is [PERSON] married to?” may be associated with a spousalrelationship type.

To determine that particular question text matches the template, therelationship identifier 112 may compare the question text to thetemplate to determine if the question text matches the template. Forexample, the relationship identifier 112 may compare the question text“Who is Barack Obama married to?” to the template “Who is [PERSON]married to?” and determine that the question text matches the template.Based on determining that the question text matches the template, therelationship identified can select a spousal relationship type as thetype of candidate relationship between the entities identified by theentity identifier 110.

In some implementations, determining that question text matches atemplate requires that an entity identified by the entity identifier 110be of a particular entity class that is specified by the template. Forexample, the relationship identifier 112 may determine that the questiontext, “Who is Barack Obama married to?” matches the template “Who is[PERSON] married to?” only if the question text matches the template andthe entity “Barack Obama” identified by the entity identifier 110 is ofthe “person” class specified by the template. Thus, while comparing thequestion text “Who is Barack Obama married to?” to the template “Who is[PERSON] married to?” may result in the relationship identifier 112determining a spousal relationship type, comparing the question text“Who is America married to?” to the template would not result in therelationship identifier 112 determining a spousal relationship type ifthe entity identifier 110 identifies the entity “America” as being ofthe “place” class.

Additionally or alternatively, the relationship identifier 112 mayidentify certain terms or characters in question text as stop words orpunctuation, and may ignore those terms or characters when determiningwhether the question text matches a template. For example, the questiontext “Who is Barack Obama married to?” may be determined as matching thetemplate “who [PERSON] married to” based at least on the relationshipidentifier 112 ignoring the stop word “is” and the question mark thatappear in the question text when comparing the question text and thetemplate.

In other implementations, the relationship identifier 112 determines arelationship type from question text by comparing annotated questiontext to one or more parser-based templates. In this implementation, therelationship identifier 112 compares parser-based templates to theannotated question text received from the sentence parser 108 indetermining a relationship type for the candidate relationship betweenthe entities identified by the entity identifier 110.

For example, the question text “Who is Barack Obama married to?” that isannotated as “WHO/pronoun IS/verb BARACK OBAMA/noun MARRIED/adjectiveTO/verb?” may be determined as matching the parser-based template“[PERSON]/pronoun IS/verb [PERSON]/noun MARRIED/adjective TO/verb” thatis associated with a spousal relationship type. Based on determiningthat the annotated question text matches the parser-based template, andoptionally determining that the entity “Barack Obama” is of the “person”class specified by the parser-based template, the relationshipidentifier 112 can determine a spousal relationship type for thepotential relationship between the entities identified by the entityidentifier 110.

While the embodiments discussed thus far compare surface-based templatesor parser-based templates with question text to determine a relationshiptype, in some implementations the surface-based templates orparser-based templates may be compared with answer text to determine arelationship type. In some implementations, the answer text may becompared to surface-based or parser-based templates only afterdetermining that none of the surface-based templates or parser-basedtemplates match the question text.

Additionally or alternatively, in some instances, surface-basedtemplates or parser-based templates may be specific to one of questiontext or answer text, such that template that is directed to detectingrelationship types from question text is not compared with answer text,and vice versa. In some implementations, both question text and answertext are compared with one or more surface-based templates orparser-based templates to determine a relationship type, for example, tohelp increase the accuracy of the determination.

In other implementations, the relationship identifier 112 utilizes aclassifier-based extractor to determine a relationship type fromquestion text and/or answer text, for example, a maximum entropy-basedextractor. The classifier-based extractor makes a probabilistic estimateof a candidate relationship between two entities based on a combinationof signals or information from multiple sources. For instance, a maximumentropy-based extractor may consider multiple factors in determiningwhether question text and/or answer text identifies a particularrelationship type.

For example, the classifier-based extractor may consider whether thequestion text and/or answer text matches a particular surface-basedtemplate or parser-based template, and if so which template or templatesthe question text and/or answer text matches, may consider the classesof entities identified by the entity identifier 110, may consider aparse from a HEAD token identified in the question text to an entityidentified from the question text by the entity identifier 110, mayconsider a parse path from a HEAD token identified in the answer text toan entity identified from the answer text by the entity identifier 110,may consider words that appear adjacent to the entities identified fromthe question text or answer text, may compute and/or consider asimilarity measure that is determined for the pair of the question textand a template or answer text and a template, or may consider otherfactors in determining the probabilistic estimate of the relationshiptype.

After determining the various factors or information, theclassifier-based extractor evaluates the factors or information todetermine one or more probabilities that each indicate the probabilitythat the question text and/or answer text relates to a particularrelationship type. The classifier-based extractor selects therelationship type having the highest estimated probability as therelationship type specified by the resource. This is in contrast to thetemplate-based extractor, which identifies a particular relationshiptype based on a binary determination, i.e., based on determining thatthe question text does or does not match a particular template, withoutproviding a probability of the accuracy of the determined relationshiptype.

Based on the entity identifier 110 having identified a pair ofpotentially related entities from the question text and answer text andthe relationship identifier 112 having identified a particular type ofcandidate relationship between the entities, information identifying thecandidate relationship between the pair of entities is provided to theaggregator 114. For example, based on identifying the entity “BarackObama” from question text and the entity “Michelle Obama” from answertext, and further determining that a relationship between the twoentities may be a spousal relationship, e.g., based on the question textmatching a template associated with a spousal relationship type, theaggregator 114 receives information from the entity identifier 110 andrelationship identifier 112 that specifies the entities and therelationship type.

The aggregator 114 adds the candidate relationship to a set of candidaterelationships of the particular relationship type for the entityidentified from the question text. For example, the aggregator 114 canadd the candidate spousal relationship between the entity “Barack Obama”and the entity “Michelle Obama” to a set of candidate spousalrelationship for the entity “Barack Obama.” The set of candidaterelationships is stored at the candidate relationships database 116. Forexample, as shown in FIG. 1, the candidate relationships database 116may include multiple candidate spousal relationships for the entity“Barack Obama,” including the candidate spousal relationship between“Barack Obama” and the entity “Michelle Obama,” and the candidatespousal relationship between “Barack Obama” and the entity “Laura Bush.”

In some implementations, the system 100 processes multiple resourcesaccessible at the Q&A resource database 102 to identify candidaterelationships between entities, and the aggregator 114 adds each ofthese candidate relationships to the candidate relationships database116. For example, in connection with the processing of multipleresources, the aggregator 114 can receive information specifyingmultiple candidate relationships from the entity identifier 110 andrelationship identifier 112, where each candidate relationship indicatesthe same relationship type between a particular entity and anotherentity, e.g., multiple candidate spousal relationships between theentity “Barack Obama” and one or more different entities. The aggregator114 can add each of these candidate relationships to a set of candidaterelationships of the particular relationship type for the particularentity at the candidate relationships database 116.

The candidate relationships database 116 can include one or moredatabases or other data storage units that are accessible by theaggregator 114 over one or more networks, or over one or more wired orwireless connections. In some implementations, the aggregator 114receives information from the entity identifier 110 that identifies apair of entities, and receives information from the relationshipidentifier 112 that identifies a relationship type for a candidaterelationship between the pair of entities identified by the entityidentifier 110. The aggregator 114 can combine the information receivedfrom the entity identifier 110 and the relationship identifier 112 tocreate a candidate relationship that the aggregator 114 can then storeat the candidate relationship database 16. For example, the aggregator114 can create an entry at the candidate relationship database 16 thatidentifies the pair of entities, e.g., “Barack Obama” and “MichelleObama,” and the relationship type, e.g., a spousal relationship type.

In some implementations, the candidate relationship database 116receives the data specifying the candidate relationship from theaggregator 114, and adds the candidate relationship to a set ofcandidate relationships stored at the candidate relationship database116. In some implementations, the candidate relationship database 116stores sets of candidate relationships for one or more differententities, and/or for one or more different relationship types for thoseentities. For example, the candidate relationship database 116 can storea set of candidate relationships for each of the entities “Barack Obama”and “Joe Biden.” The candidate relationship database 116 can also storea set of candidate relationships of one or more different relationshiptypes for each of those entities. For example, entity “Barack Obama” canbe associated with a set of candidate relationships of a spousalrelationship type, a set of candidate relationships of a politicalrelationship type, a set of candidate relationships of a residencerelationship type, etc.

Each set of candidate relationships of a particular relationship typefor a particular entity can include one or more candidate relationships.For example, the candidate relationship database 116 can store candidatespousal relationships for the entity “Barack Obama” that include acandidate spousal relationship to the entity “Michelle Obama,” and acandidate spousal relationship to the entity “Laura Bush.”

In some implementations, the candidate relationship database 116 canstore duplicates of particular candidate relationships of a particularrelationship type between specific entities, or can maintain a counterof the number of times the candidate relationship database 116 hasreceived information from the aggregator 114 specifying the particularcandidate relationship of the particular relationship type between thespecific entities. For example, the candidate relationship database 116can store multiple entries that specify a candidate spousal relationshipexists between “Barack Obama” and “Michelle Obama.” Alternatively, thecandidate relationship database 116 can store a single entry for thecandidate spousal relationship between the entities “Barack Obama” and“Michelle Obama,” and can also store information indicating the numberof times that the candidate relationship database 116 has receivedinformation from the aggregator 114 specifying that particular candidaterelationship.

The candidate relationship database 116 includes candidate relationshipsthat are each determined from a particular resource stored in the Q&Aresource database 102. For example, for each resource in the Q&Aresource database 102 that is processed by the system 100, the system100 can determine a candidate relationship and can store the candidaterelationship at the candidate relationship database 116. Since thesystem 100 may determine different candidate relationships of aparticular relationship type for different resources, the candidaterelationship database 116 may different candidate relationships of theparticular relationship type for the particular entity.

For example, based on processing a resource that includes the questiontext “Who is Barack Obama married to?” and the answer text “MichelleObama,” the system 100 may determine that a candidate spousalrelationship exists between the entity “Barack Obama” and the entity“Michelle Obama” and may store that candidate relationship at thecandidate relationship database 116. Additionally, based on processing aresource that includes the question text “Who did Barack Obama marry?”and the answer text “He married me,” the system 100 may determine thatanother candidate spousal relationship exists between the entity “BarackObama” and the entity “me,” and may also store that candidaterelationship database 116. In this way, the candidate relationshipdatabase 116 may store a number of candidate relationships of aparticular relationship type for a specific entity, e.g., candidatespousal relationships for the entity “Barack Obama.”

The relationship selector 118 having access to the candidaterelationship database 116 can access one or more candidate relationshipsof a particular relationship type for a specific entity, and can selecta particular candidate relationship as the relationship of theparticular relationship type for the specific entity that is most likelyto be valid. For example, the relationship selector 118 can accessinformation specifying one or more candidate spousal relationships forthe entity “Barack Obama,” such as a first candidate spousalrelationship between “Barack Obama” and “Michelle Obama,” and a secondcandidate spousal relationship between “Barack Obama” and “Laura Bush.”Based on accessing the candidate relationships of the particularrelationship type for the particular entity, the relationship selector118 determines a confidence measure for each of the candidaterelationships, and selects the candidate relationship having theconfidence measure that is indicative of the greatest confidence.

In some implementations, the relationship selector 118 considers anumber of different factors in determining which candidate relationshipis most likely to be a valid relationship of a particular relationshiptype between two entities. For example, the relationship selector 118can access the information specifying the candidate relationships at thecandidate relationship database 116, and may also access additionalinformation relating to the candidate relationships. For example, thecandidate selector 118 may access information indicating the number ofresources processed by the system 100 that resulted in a particularcandidate relationship being determined, e.g., the number of processedresources that suggest a spousal relationship between “Barack Obama” and“Michelle Obama,” as well as the number of processed resources thatsuggest a spousal relationship between “Barack Obama” and “Laura Bush.”

Additionally or alternatively, the candidate selector 118 may accessinformation indicating the number of different templates that werematched by question text identified from different resources and thatresulted in a particular candidate relationship being determined. Forexample, the system 100 may determine a candidate spousal relationshipbetween the entities “Barack Obama” and “Michelle Obama” based on thequestion text “Who is Barack Obama married to?” from one resourcematching the template “Who is [PERSON] married to?” and may alsodetermine a candidate spousal relationship between the entities “BarackObama” and “Michelle Obama” based on the question text “Who did BarackObama marry?” extracted from another resource matching the template “Whodid [PERSON] marry?”

The relationship selector 118 may additionally or alternatively considerthe number of resources that identify the pair of entities for aparticular relationship type. For example, the relationship selector 118may determine a total number of resources that specify a candidaterelationship between “Barack Obama” and “Michelle Obama,” and mayfurther determine the number of those resources that specify that thecandidate relationship between the entities “Barack Obama” and “MichelleObama” that are spousal relationships, as opposed to, for example,political relationships, sibling relationships, etc. Other factors orinformation may also be determined or obtained by the relationshipselector 118, and used in determining a confidence measure for aparticular candidate relationship.

The relationship selector 118 accesses the information relevant todetermining the confidence measure for each candidate relationship, andprovides the information to a classifier that predicts that probabilityof each candidate relationship being valid. For example, the classifiermay be a machine-learnt classifier that predicts the probability of eachcandidate relationship being valid.

The relationship selector 118 then selects the particular candidaterelationship having the highest confidence measure as the relationshipof the particular relationship type for the particular entity identifiedfrom the question text. For example, based on determining a confidencemeasure for a spousal relationship between “Barack Obama” and “MichelleObama” and determining a confidence measure for a spousal relationshipbetween “Barack Obama” and “Laura Bush,” the relationship selector 118may determine that the confidence value for the candidate spousalrelationship between “Barack Obama” and “Michelle Obama” is greater thanthe confidence value for the candidate spousal relationship between“Barack Obama” and “Laura Bush.” Based on this determination, therelationship selector 118 selects the candidate spousal relationshipbetween “Barack Obama” and “Michelle Obama.”

Based on selecting a particular candidate relationship, the relationshipselector 118 provides information to the entity relationship model 120that establishes a relationship in the entity relationship model 120between the pair of entities specified in the selected candidaterelationship. For example, the relationship selector 118 can provideinformation to the entity relationship model 120 that indicates that theentities “Barack Obama” and “Michelle Obama” are to be related by aspousal relationship type.

Based on receiving the information specifying the pair of relatedentities and the relationship type, the entity relationship model 120establishes a relationship of the specified relationship type betweenthe pair of entities. For example, the entity relationship model 120receives the information specifying the entities “Barack Obama” and“Michelle Obama,” as well as information specifying a spousalrelationship type, and establishes a spousal relationship between theentities “Barack Obama” and “Michelle Obama” in the entity relationshipmodel 120.

In some implementations, as shown in FIG. 1, entities can be representedby nodes 122, with edges 124 between the nodes 122 specifyingrelationships between the nodes 122. For example, a first node 122 mayrepresent the entity “Barack Obama,” a second node 122 may represent theentity “Michelle Obama,” and a third node may represent the entity “JoeBiden.” The nodes 122 representing the entities “Barack Obama” and “JoeBiden” may be related by an existing edge 124 that indicates a politicalrelationship between the two entities. Based on the entity relationshipmodel 120 receiving information specifying a spousal relationshipbetween the entities “Barack Obama” and “Michelle Obama,” the entityrelationship model 120 is updated to include an edge 124 indicating aspousal relationship between the nodes 122 representing the entities“Barack Obama” and “Michelle Obama.”

In some instances, the information received by the entity relationshipmodel 120 may specify an entity that is not already represented by anode 122 in the entity relationship model 120. To establish arelationship between the specified entity and another entity that isalready represented in the entity relationship model 120, the entityrelationship model 120 may create or add a new node 122 to the entityrelationship model 120 that represents the entity. The entityrelationship model 120 may then establish a relationship between thenewly created or added node 122 that represents the specified entity andone or more other nodes 122 that represent other entities in the entityrelationship model 120.

While represented in FIG. 1 as a model including nodes 122 thatrepresent entities and edges 124 representing relationships betweenthose nodes 122, in other implementations the entity relationship model120 can represent relationships between entities using different modeltypes, or may utilize other methods of representing the relationshipsbetween entities. For example, the entity relationship model 120 mayutilize a linked list data structure, a tabular data structure, an arrayor associative array data structure, a graph, tree, or other linked datastructure, or any other data structure capable of specifyingrelationships having associated relationship types between differententities.

FIGS. 2A and 2B illustrate example systems for extracting a relationshiptype from question and/or answer text. For example, the functions of therelationship identifier 112 and/or the sentence parser 108 may beimplemented by the systems depicted in FIG. 2A or 2B.

FIG. 2A illustrates a system that is capable of performingtemplate-based extraction to determine a relationship type from questiontext and/or answer text. In some implementations, the system of FIG. 2Acan include a template-based extractor 212 that determines arelationship type 206 based on received question text 202 and/or answertext 204. The template-based extractor 212 can include a templatedatabase 220 that includes one or more surface-based or parser-basedtemplates that are accessible by a template classifier 222. The templateclassifier 222 compares the question text 202 and/or answer text 204 toone or more of the templates accessible at the template database 220 todetermine the relationship type 206. The relationship type 206 may beused in specifying a candidate relationship between two entities, suchthat the candidate relationship of the relationship type 206 may beaggregated with other candidate relationships when determining arelationship between two particular entities.

The question text 202 and answer text 204 are portions of text that havebeen selected from resource content, such as text from a webpage of aQ&A website. For example, the question text 202 and answer text 204 canbe selected by the Q&A classifier 106 of FIG. 1. In someimplementations, the question text 202 and/or answer text 204 may betext that has not been annotated or may be text that has been annotated,for example, by the sentence parser 108 of FIG. 1.

Based on the template-based extractor 212 receiving question text 202 oranswer text 204 that is not annotated, the template-based extractor 212may access one or more surface-based templates at the template database220 and compare the question text 202 and/or answer text 204 to the oneor more surface-based templates. Alternatively, if the question text 202and/or answer text 204 has been annotated, the template-based extractor212 accesses one or more parser-based templates at the template database220 and compares the question text 202 and/or answer text 204 to the oneor more parser-based templates.

A surface-based template represents a question or answer that isassociated with a particular relationship type using words in aparticular order. For example, the template-based extractor 212 maycompare the question text “Who is Barack Obama married to?” that has notbeen annotated to the surface-based template, “Who is [PERSON] marriedto?” that is associated with a spousal relationship type, and maydetermine that the question text matches the surface-based templateassociated with the spousal relationship type. Based on detecting thematch between the question text and the surface-based template, thetemplate-based extractor 212 can return a spousal relationship type asthe relationship type 206.

Alternatively, a parser-based template is associated with a particularrelationship type and uses annotated text that includes words orgrammatical units in a particular order. For example, the template-basedextractor 212 may receive the question text “Who is Barack Obama marriedto?” that has been annotated as, “WHO/pronoun IS/verb BARACK OBAMA/nounMARRIED/adjective TO/verb?” The template-based extractor 212 may comparethe annotated question text to the parser-based template“[PERSON]/pronoun IS/verb [PERSON]/noun MARRIED/adjective TO/verb” thatis associated with a spousal relationship type. Based on determiningthat the annotated question text matches the parser-based templateassociated with a spousal relationship type, the template-basedextractor 212 can return a spousal relationship type as the relationshiptype 206.

In some implementations, a surface-based template or parser-basedtemplate includes one or more placeholders that are fillable by one ormore terms of question text 202 or answer text 204. For example, thesurface-based template “Who is [PERSON] married to?” includes aplaceholder that may be filled by one or more terms of question textthat correspond to an entity identified in the question text. Similarly,the parser-based template “[PERSON]/pronoun IS/verb [PERSON]/nounMARRIED/adjective TO/verb” includes two placeholders for a pronoun andan entity identified in the question text. One or more terms of questiontext 202 or answer text 204 may be classified as filling a placeholderin a template based on other terms in the question text 202 or answertext 204 matching the template, e.g., based on the terms “who,” “is,”“married,” and “to” being in the proper order to match the surface-basedtemplate “Who is [PERSON] married to?”

In some implementations, determining that one or more particular termsof question or answer text fill a placeholder in a template comprisesdetermining an entity class associated with one or more terms that mightfill a placeholder, and determining whether the one or more terms thatmight fill the placeholder match a grammatical unit type and/or anentity class specified by the placeholder. For example, thetemplate-based extractor 212 can determine that the terms “Barack Obama”might match the placeholder of the “person” entity class in thesurface-based template “Who is [PERSON] married to?” and may accessinformation indicating a grammatical unit and/or entity class associatedwith the terms “Barack Obama.” Such information may be accessible by thetemplate-based extractor 212, for example, at the entity identifier 110of FIG. 1, or may be determined by the template-based extractor 212, forexample, by comparing the terms “Barack Obama” to one or more entitiesthat are represented in the entity relationship model 120 of FIG. 1.

In some examples, candidate terms to fill a placeholder in a templateare compared only with entities of a particular entity class that isspecified by the template. For example, based on the placeholder in thetemplate “Who is [PERSON] married to?” specifying a “person” entityclass, the terms “Barack Obama” that are identified as potentiallyfilling the placeholder may be compared only to other entities of a“person” entity class and not to entities of other entity classes, e.g.,entities of “place” or “thing” classes. Similarly, other terms inquestion text 202 or answer text 204 that are identified as potentiallyfilling a placeholder in a template may be compared only to one or moreacceptable terms for the particular placeholder in the template.

For example, based on determining that the term “Who” in the annotatedquestion text “WHO/pronoun IS/verb BARACK OBAMA/noun MARRIED/adjectiveTO/verb?” may match the placeholder “[PERSON]/pronoun” in theparser-based template “[PERSON]/pronoun IS/verb [PERSON]/nounMARRIED/adjective TO/verb,” the template-based extractor 212 may comparethe term “Who” to a set of pronouns to determine whether the term “Who”satisfies the placeholder for the parser-based template. In someinstances, each template may specify one or more terms that may fill aparticular placeholder. For example, one parser-based template mayspecify that any pronoun may fill a “[PERSON]/pronoun” placeholder inthe template, while another parser-based template may specify that onlythe pronouns “him,” “her,” or “them” may fill the placeholder.

In some implementations, the template classifier 222 ignorespunctuation, capitalization, and/or certain terms that are designated asstop words when the comparing the question text 202 or answer text 204to a surface-based template or parser-based template. For example, thetemplate-based extractor 212 may receive the question text “Who isBarack Obama married to?” and may ignore the capitalization,punctuation, and the term “is” that is designated as a stop word. Thetemplate-based extractor 212 may consequently determine that thequestion text matches the surface-based template “who [PERSON] marriedto” based on ignoring the capitalization, punctuation, and designatedstop words in the question text. Similarly, the question text “Who isBarack Obama married to?” may be determined as matching the parser-basedtemplate “[PERSON]/pronoun [PERSON]/noun MARRIED/adjective” based onignoring punctuation, capitalization, and the designated stop words “is”and “to” in the parser-based template.

In some implementations, the template-based extractor 212 can return atarget entity class in addition to the relationship type 206. Forexample, based on determining a spousal relationship type, thetemplate-based extractor 212 can return information specifying a“person” entity class, such that entities identified from the questiontext 202 or answer text 204 are only selected if one, or both, of theentities are of the “person” entity class, e.g., not of a “place” or“thing” class. In some implementations, the information specifying thetarget entity class may be provided by the template-based extractor 212to one or more components that identify and select potentially relatedentities from question text or answer text, for example, the entityidentifier 110 of FIG. 1.

As discussed previously, in some instances, the template classifier 222may compare only question text 202 to surface-based templates orparser-based templates to identify a match. Alternatively, the templateclassifier 222 may compare both question text 202 and answer text 204 tosurface-based or parser-baser templates, where templates may be questiontemplates that are compared only to question text 202 or may be answertemplates that are compared only to answer text 204. In some instances,the template classifier 222 may determine matches between the questiontext 202 and a first template and between the answer text 204 and asecond template, and may consider both matches in determining therelationship type 206.

In some implementations, training may be performed to identify templatesthat are to be stored at the template database 220 and used by thetemplate-based extractor 212 to identify the relationship type 206. Todetermine useful relationships for a particular relationship type,distant supervision techniques may be employed. For example, distantsupervision techniques may be employed to determine if a particularcandidate template is a useful template for identifying a particularrelationship type.

In some examples, known relationships between entities may be used inidentifying useful templates for a particular relationship type. Forexample, the spousal relationship between the actor “Brad Pitt” and theactress “Angelina Jolie” may be used as a known spousal relationship inidentifying templates that are likely associated with a spousalrelationship type. Known relationships between entities may bedetermined, for example, from the entity relationship model 120 of FIG.1 or from one or more other sources.

To identify a candidate template, one or more resources, such as one ormore webpages of a Q&A website, are identified that include questiontext and answer text that identify the entities “Brad Pitt” and“Angelina Jolie.” A candidate template for the spousal relationship typeis determined from the question text identified from the resource. Forexample, based on determining that the question text “Who did Brad Pittmarry?” and the answer text “He married Angelina Jolie” identify theentities “Brad Pitt” and “Angelina Jolie,” a candidate template for aspousal relationship can be determined, such as the candidate template,“Who did [PERSON] marry?” The process can be repeated for a number ofdifferent resources that identify the entities “Brad Pitt” and “AngelinaJolie” or other pairs of entities that are known to have a spousalrelationship to generate a set of candidate templates for the spousalrelationship type.

Each of these candidate templates can be associated with a count,indicating the number of times each candidate template has been detectedin the resources, e.g., the number of other webpages from Q&A websitesthat have similar question and answer text and that mention entitiesthat are known to have a particular relationship type. Templates thatoccur most frequently, or that are identified in connection with themost unique pairs of entities that are known to have the particular typeof relationship, are selected as templates associated with theparticular relationship type. In some implementations, candidatetemplates that satisfy a threshold number of occurrences, or that areidentified in connection with a threshold number of unique pairs ofentities that are known to have the particular type of relationship, areselected as templates associated with the particular relationship type.

FIG. 2B illustrates a system that is capable of performingclassifier-based extraction to determine a relationship type based onquestion text. In some implementations, the system of FIG. 2B caninclude a classifier-based extractor 252 that determines a relationshiptype 206 based on received question text 202 and/or answer text 204. Theclassifier-based extractor 252 can include a template database 220 thatincludes one or more surface-based or parser-based templates that isaccessible by a machine learned classifier 224, and can further includetraining data 226 that is also accessible by the machine learnedclassifier 224. The machine learned classifier 224 can analyze thequestion text 202 and/or answer text 204 to determine the relationshiptype 206. The relationship type 206 determined by the classifier-basedextractor 252 can be used in specifying a candidate relationship betweentwo entities.

Similar to FIG. 2A, the question text 202 and/or answer text 204 of FIG.2B are portions of text that have been selected from a resource, such asa webpage of a Q&A website. The question text 202 and/or answer text 204can be selected by, for example, the Q&A classifier 106 of FIG. 1, andin some implementations may be annotated question text 202 and answertext 204, for example, where the question text 202 and/or answer text204 have been annotated by the sentence parser 108 of FIG. 1. Based onthe classifier-based extractor 252 receiving the question text 202and/or the answer text 204, the classifier-based extractor 252 canprocess the texts 202, 204 to identify the relationship type 206.

In some implementations, the classifier-based extractor 252 determinesthe relationship type 206 based on determining one or more differentsignals or information, and determining a probability that a particularrelationship type exists based on the one or more determined signals orinformation. For example, the machine learned classifier 224 can receivethe question text 202 and/or answer text 204, and can compare thequestion text 202 and/or answer text 204 to one or more surface-basedtemplates and/or parser-based templates. If the question text 202 and/oranswer text 204 is annotated text, the machine learned classifier 224may compare the annotated text to one or more parser-based templates todetermine whether a match exists, while if the question text 202 and/oranswer text 204 is not annotated, the machine learned classifier 224 maycompare the text that is not annotated to one or more surface-basedtemplates to determine whether a match exists. The machine learnedclassifier 224 may determine which of the templates the question text202 and/or answer text 204 matches, and may consider the match between atemplate and the question text 202 or answer text 204 when determiningthe probability of a particular relationship type being represented bythe texts 202, 204.

As discussed previously, in some instances, the machine learnedclassifier 224 may compare only question text 202 to surface-basedtemplates or parser-based templates to identify a match. Alternatively,the machine learned classifier 224 may compare both question text 202and answer text 204 to surface-based or parser-baser templates, wheretemplates may be question templates that are compared only to questiontext 202 or may be answer templates that are compared only to answertext 204. In some instances, the machine learned classifier 224 maydetermine matches between the question text 202 and a first template andbetween the answer text 204 and a second template, and may consider bothmatches in determining the relationship type 206.

In addition to considering whether a match exists between a particulartemplate and the question text 202, the machine learned classifier 224can consider additional signals in determining the probability that aparticular Q&A resource specifies a particular type of relationship. Forexample, the machine learned classifier can consider the classes ofentities determined from the question text 202 and/or answer text 204.These entity classes may be determined, for example, by the machinelearned classifier 224, or may be determined by another component, suchas the entity identifier 110 of FIG. 1.

Additionally or alternatively, the machine learned classifier 224 maydetermine a parse path between a HEAD token identified from the questiontext 202 to an entity identified from the question text 202, or maydetermine a parse bath between a HEAD token identified from the answertext 204 to an entity identified from the answer text 204. In such animplementation, the pairing of the HEAD token and the entity indicatesthe syntactic dependency of the identified entity on the HEAD token. Insome instances, for example, the HEAD token of a portion of text may bea verb in the text, where the identified entity is the subject of thetext or is otherwise related to the verb in the text. Otherimplementations relating to the determining of HEAD tokens and relatedentities for the question text 202 or answer text 204 may be used by themachine learned classifier 224.

In other implementations, other signals or information determined oraccessed by the machine learned classifier 224 may be used to determinethe probability of a particular type of relationship being identifiedfrom question text 202 or answer text 204. The machine learnedclassifier 224 may consider whether the entity identified from thequestion text 202, e.g., an entity identified from the question text 202by the entity identifier 110 of FIG. 1, is also identified in the answertext 204. The machine learned classifier 224 may consider terms of thequestion text 202 or answer text 204 that appear adjacent to entitiesidentified in the question text 202 or answer text 204. The machinelearned classifier 224 may determine a similarity measure between thequestion text 202 and the answer text 204, and consider the similaritymeasure when determining the probability of a particular type ofrelationship being identified by the question text 202 and answer text204. Other and/or different signals or information may be considered bythe machine learned classifier 224 in determining the probability that aparticular type of relationship is conveyed in the question text 202 andanswer text 204.

Based on the signals and/or information considered, the machine learnedclassifier 224 can compute a confidence measure for one or moredifferent relationship types that indicates the probability of aparticular relationship type being conveyed by the question text 202and/or answer text 204. For example, the machine learned classifier maydetermine a first confidence measure for a spousal relationship type,and a second confidence measure for a sibling relationship type.

The machine learned classifier 224 may select, as the relationship type206 returned by the classifier-based extractor 252, the candidaterelationship type having the highest confidence, or the candidaterelationship type whose confidence satisfies a particular threshold.Overall, the processing performed by the classifier-based extractor 252allows for a probabilistic determination of a type of relationship thatis conveyed by question text 202 and/or answer text 204, which is unlikethe binary match or failure to match determined by the template-basedextractor 212.

The classifier-based extractor 252 can access the training data 226 toallow for training of the classifier-based extractor 252, therebyenabling the machine learned classifier 224 to more accurately predictrelationship types from the question text 202 and/or answer text 204.Similar to the training process described with respect to thetemplate-based extractor of FIG. 2A, training of the classifier-basedextractor 252 can utilize distant supervision techniques. Samples ofquestion text and answer text that are known to identify a particularrelationship type are analyzed by the classifier-based extractor 252,and the method of determining the confidence measure for a particulartype of relationship can be adjusted to increase the confidence measurefor the relationship type that the entities are known to have.

For example, the classifier-based extractor 252 can access training data226 that includes the question text “Who did Brad Pitt marry?” andanswer text “He married Angelina Jolie.” Based on this question andanswer text, the classifier-based extractor 252 can change the signalsor information considered in determining the confidence measure for thespousal relationship type, or weights applied to the signals orinformation considered in determining the confidence measure for thespousal relationship type.

These adjustments would result in the question and answer text relatingto “Brad Pitt” and “Angelina Jolie” being assigned a higher confidencemeasure for a spousal relationship type, therefore increasing theprobability that the question and answer text relating to “Brad Pitt”and “Angelina Jolie,” and similar question and answer texts, would beidentified as relating to a spousal relationship type. Similarly, thistraining could include changing the type of factors or information, orweights applied to certain factors or information, to reduce the chancesthat question and answer texts that identify a spousal relationship typeare classified as identifying other relationship types.

FIG. 3 depicts a flowchart of an example process for extracting entityrelationships from webpages of Q&A websites. In some implementations,the process 300 of FIG. 3 can be performed by the system 100 of FIG. 1.

At step 302, a resource is obtained. For example, the Q&A resourceselector 104 of FIG. 1 can select a particular resource that isaccessible at the Q&A resource database 102. In some implementations, asdescribed, the obtained resource is a webpage or other resource of a Q&Awebsite, such that the resource includes textual portions thatcorrespond to a question and an answer to that question.

At step 304, a first portion of text of the resource that ischaracterized as a question and a second portion of text of the resourcethat is characterized as an answer to the question are identified fromthe content of the obtained resource. For example, the Q&A classifier106 of FIG. 1 can access the obtained resource that was selected by theQ&A resource selector 104 from the Q&A resource database 102, and canprocess the resource to identify a portion of text in the resource thatcorresponds to a question and a portion of text in the resource thatcorresponds to an answer to that question.

In some instances, the resource is a webpage of a Q&A website, and theQ&A classifier 106 can process the webpage to identify text on thewebpage that corresponds to a question and an answer. As described, anumber of methods can be used to identify portions of text thatcorrespond to either a question or answer in the obtained resource. Forexample, the obtained resource may be parsed or annotated, and questiontext or answer text may be identified based on identifying specificcharacters or character strings in the text of the resource, based on adetected sentence structure of particular portions of text, based ondetecting repeating text in multiple textual portions of the webpage, orbased on other methods.

At step 306, the first portion of text of the resource that ischaracterized as a question is analyzed to identify an entity that isreferenced by one or more terms of the first portion of text and arelationship type that is referenced by one or more other terms of thefirst portion of text, and the second portion of text of the resourcethat is characterized as an answer to the question is analyzed toidentify an entity that is referenced by one or more terms of the secondportion of text. For example, the first portion of text of the resourcethat is characterized as the question can optionally be annotated by thesentence parser 108 of FIG. 1, and the annotated or non-annotatedquestion text can be accessed by each of the relationship identifier 112and the entity identifier 110 to identify both an entity from the firstportion of text and a relationship type from the first portion of text.Similarly, the second portion of text that is characterized as theanswer can optionally be annotated by the sentence parser 108 andanalyzed by the entity identifier 110 of FIG. 1 to identify an entityfrom the answer portion of the text.

In some implementations, the first portion of text that is characterizedas the question may be relied on for determining both a relationshiptype and the first of a pair of entities that might have the particulartype of relationship. Identifying the relationship type solely from thefirst portion of text may expedite processing of the resource, without aconsiderable change in accuracy, since questions presented, e.g., at awebpage of a Q&A website, will typically need to explicitly state thetype of relationship that a user is trying to determine. The same is nottrue for the second portion of text that is characterized as an answerto the question, since the answer to the question may not reference thetype of relationship.

For example, while a relationship type may be determined from either thefirst portion of text or the second portion of text when the questionrecites “Who is Barack Obama married to?” and the answer recites “He ismarried to Michelle Obama,” a relationship type may not be determinedfrom the second portion of text that is characterized as the answer whenthe question recites, “Who is Barack Obama married to?” and the answerrecites “Michelle Obama.” Thus, relying solely on the first portion ofthe text that is characterized as the answer maintains reliability ofthe system in determining a relationship type, while also reducing theexpenditure of resources needed to process the second portion of textthat is characterized as the answer.

In some implementations, the system may perform processing on the secondportion of text that is characterized as the answer if processing of thefirst portion of the text does not result in the identification of arelationship type, or does not result in a sufficiently confidentdetermination of a relationship type. In some implementations, templatesor methods used to identify a relationship type from question text maybe different from the templates or methods used to identify arelationship type from answer text.

Having identified an entity from each of the first portion of text thatis characterized as the question and the second portion of text that ischaracterized as the answer, and also identified a relationship typefrom the first portion of text, at step 308 a score associated with arelationship of the identified type between the two entities isadjusted. For example, based on the entity identifier 110 andrelationship identifier 112 of FIG. 1 identifying a pair of entities anda relationship type, the aggregator 114 or relationship selector 118 ofFIG. 1 may adjust a score associated with a candidate relationship ofthe determined type between the two entities. For example, based onprocessing a first portion of text that recites “Who is Barack Obamamarried to?” and a second portion of text that recites “Michelle Obama,”the entities “Barack Obama” and “Michelle Obama” can be identified, anda spousal relationship type can also be identified. Based on thesedeterminations, a score associated with a candidate spousal relationshipbetween the entities “Barack Obama” and “Michelle Obama” can be adjustedto indicate an increased likelihood that the spousal relationshipbetween “Barack Obama” and “Michelle Obama” is valid.

In some instances, adjusting the score for a particular relationshiptype between a pair of entities may also involve adjusting scores thatare associated with other relationship types between the pair ofentities or adjusting scores that are associated with other possiblerelationships of the identified relationship type between one of theidentified entities and another entity. For example, based onidentifying a spousal relationship between the entities “Barack Obama”and “Michelle Obama,” a score associated with a spousal relationshipbetween the entities “Barack Obama” and “Laura Bush,” or a scoreassociated with a sibling relationship between the entities “BarackObama” and “Michelle Obama” can also be adjusted to indicate a reducedconfidence that those relationships are valid.

The adjusted score or scores can subsequently be used in selecting aparticular relationship of the identified relationship type for theentity identified from the first portion of text that corresponds to thequestion. For example, the relationship selector 118 of FIG. 1 canaccess candidate spousal relationships for the entity “Barack Obama”from the candidate relationships database 116. Such candidates mayinclude, for example, a candidate spousal relationship between theentities “Barack Obama” and “Michelle Obama,” and candidate spousalrelationship between the entities “Barack Obama” and “Laura Bush,” and acandidate spousal relationship between the entities “Barack Obama” and“Hillary Clinton.” Each of the candidate spousal relationships can beassociated with a score that indicates a probability or confidence thatthe particular candidate spousal relationship is a valid spousalrelationship.

The relationship selector 118 of FIG. 1 can access the candidate spousalrelationships for the entity “Barack Obama” and can select the candidatespousal relationship that is associated with the score indicating thehighest confidence or probability of being a valid relationship. Basedon the relationship selector 118 selecting a particular candidaterelationship, such as the candidate spousal relationship between theentities “Barack Obama” and “Michelle Obama,” an entity relationshipmodel be modified to establish a spousal relationship between theentities “Barack Obama” and “Michelle Obama.” For example, therelationship selector 118 can provide information to the entityrelationship model 120 of FIG. 1 that causes an edge 124 correspondingto a spousal relationship to be established between the nodes 122 thatcorrespond to the entities “Barack Obama” and “Michelle Obama.”

A number of implementations have been described. Nevertheless, it willbe understood that various modifications may be made without departingfrom the spirit and scope of the disclosure. For example, various formsof the flows shown above may be used, with steps re-ordered, added, orremoved. Accordingly, other implementations are within the scope of thefollowing claims.

For instances in which the systems and/or methods discussed here maycollect personal information about users, or may make use of personalinformation, the users may be provided with an opportunity to controlwhether programs or features collect personal information, e.g.,information about a user's social network, social actions or activities,profession, preferences, or current location, or to control whetherand/or how the system and/or methods can perform operations morerelevant to the user. In addition, certain data may be anonymized in oneor more ways before it is stored or used, so that personallyidentifiable information is removed. For example, a user's identity maybe anonymized so that no personally identifiable information can bedetermined for the user, or a user's geographic location may begeneralized where location information is obtained, such as to a city,ZIP code, or state level, so that a particular location of a user cannotbe determined. Thus, the user may have control over how information iscollected about him or her and used.

Embodiments and all of the functional operations described in thisspecification may be implemented in digital electronic circuitry, or incomputer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of one or more of them. Embodiments may be implemented asone or more computer program products, i.e., one or more modules ofcomputer program instructions encoded on a computer readable medium forexecution by, or to control the operation of, data processing apparatus.The computer readable medium may be a machine-readable storage device, amachine-readable storage substrate, a memory device, a composition ofmatter effecting a machine-readable propagated signal, or a combinationof one or more of them. The term “data processing apparatus” encompassesall apparatus, devices, and machines for processing data, including byway of example a programmable processor, a computer, or multipleprocessors or computers. The apparatus may include, in addition tohardware, code that creates an execution environment for the computerprogram in question, e.g., code that constitutes processor firmware, aprotocol stack, a database management system, an operating system, or acombination of one or more of them. A propagated signal is anartificially generated signal, e.g., a machine-generated electrical,optical, or electromagnetic signal that is generated to encodeinformation for transmission to suitable receiver apparatus.

A computer program (also known as a program, software, softwareapplication, script, or code) may be written in any form of programminglanguage, including compiled or interpreted languages, and it may bedeployed in any form, including as a stand alone program or as a module,component, subroutine, or other unit suitable for use in a computingenvironment. A computer program does not necessarily correspond to afile in a file system. A program may be stored in a portion of a filethat holds other programs or data (e.g., one or more scripts stored in amarkup language document), in a single file dedicated to the program inquestion, or in multiple coordinated files (e.g., files that store oneor more modules, sub programs, or portions of code). A computer programmay be deployed to be executed on one computer or on multiple computersthat are located at one site or distributed across multiple sites andinterconnected by a communication network.

The processes and logic flows described in this specification may beperformed by one or more programmable processors executing one or morecomputer programs to perform functions by operating on input data andgenerating output. The processes and logic flows may also be performedby, and apparatus may also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read only memory ora random access memory or both.

The essential elements of a computer are a processor for performinginstructions and one or more memory devices for storing instructions anddata. Generally, a computer will also include, or be operatively coupledto receive data from or transfer data to, or both, one or more massstorage devices for storing data, e.g., magnetic, magneto optical disks,or optical disks. However, a computer need not have such devices.Moreover, a computer may be embedded in another device, e.g., a tabletcomputer, a mobile telephone, a personal digital assistant (PDA), amobile audio player, a Global Positioning System (GPS) receiver, to namejust a few. Computer readable media suitable for storing computerprogram instructions and data include all forms of non volatile memory,media and memory devices, including by way of example semiconductormemory devices, e.g., EPROM, EEPROM, and flash memory devices; magneticdisks, e.g., internal hard disks or removable disks; magneto opticaldisks; and CD ROM and DVD-ROM disks. The processor and the memory may besupplemented by, or incorporated in, special purpose logic circuitry.

To provide for interaction with a user, embodiments may be implementedon a computer having a display device, e.g., a CRT (cathode ray tube) orLCD (liquid crystal display) monitor, for displaying information to theuser and a keyboard and a pointing device, e.g., a mouse or a trackball,by which the user may provide input to the computer. Other kinds ofdevices may be used to provide for interaction with a user as well; forexample, feedback provided to the user may be any form of sensoryfeedback, e.g., visual feedback, auditory feedback, or tactile feedback;and input from the user may be received in any form, including acoustic,speech, or tactile input.

Embodiments may be implemented in a computing system that includes aback end component, e.g., as a data server, or that includes amiddleware component, e.g., an application server, or that includes afront end component, e.g., a client computer having a graphical userinterface or a Web browser through which a user may interact with animplementation, or any combination of one or more such back end,middleware, or front end components. The components of the system may beinterconnected by any form or medium of digital data communication,e.g., a communication network. Examples of communication networksinclude a local area network (“LAN”) and a wide area network (“WAN”),e.g., the Internet.

The computing system may include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

While this specification contains many specifics, these should not beconstrued as limitations on the scope of the disclosure or of what maybe claimed, but rather as descriptions of features specific toparticular embodiments. Certain features that are described in thisspecification in the context of separate embodiments may also beimplemented in combination in a single embodiment. Conversely, variousfeatures that are described in the context of a single embodiment mayalso be implemented in multiple embodiments separately or in anysuitable subcombination. Moreover, although features may be describedabove as acting in certain combinations and even initially claimed assuch, one or more features from a claimed combination may in some casesbe excised from the combination, and the claimed combination may bedirected to a subcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the embodiments described above should not be understoodas requiring such separation in all embodiments, and it should beunderstood that the described program components and systems maygenerally be integrated together in a single software product orpackaged into multiple software products.

In each instance where an HTML file is mentioned, other file types orformats may be substituted. For instance, an HTML file may be replacedby an XML, JSON, plain text, or other types of files. Moreover, where atable or hash table is mentioned, other data structures (such asspreadsheets, relational databases, or structured files) may be used.

Thus, particular embodiments have been described. Other embodiments arewithin the scope of the following claims. For example, the actionsrecited in the claims may be performed in a different order and stillachieve desirable results.

What is claimed is:
 1. A computer-implemented method comprising:obtaining a resource; identifying (i) a first portion of text of theresource that is characterized as a question, and (ii) a second portionof text of the resource that is characterized as an answer to thequestion; identifying (i) an entity that is referenced by one or moreterms of the first portion of text that is characterized as thequestion, and (ii) an entity that is referenced by the second portion oftext that is characterized as the answer to the question; identifying arelationship type that is referenced by one or more other terms of thefirst portion of the text that is characterized as the question, basedat least on a comparison of the first portion of the text that ischaracterized as the question and one or more templates that are eachassociated with a respective relationship type indicating a match with aparticular template; and adjusting a score associated with arelationship of the relationship type for the entity that is referencedby the one or more terms of the first portion of text that ischaracterized as the question and the entity that is referenced by thesecond portion of text that is characterized as the answer to thequestion.
 2. The computer-implemented method of claim 1, wherein theresource is a question and answer (Q&A) website resource.
 3. Thecomputer-implemented method of claim 1, wherein each of the one or moretemplates is one of a surface-based template or a parser-based template.4. The computer-implemented method of claim 1, comprising: aggregatingthe score associated with the relationship of the relationship type forthe entity that is referenced by the one or more terms of the firstportion of text that is characterized as the question and the entitythat is referenced by the second portion of text that is characterizedas the answer to the question and one or more other scores that are eachassociated with the relationship of the relationship type for the entitythat is referenced by the one or more terms of the first portion of textthat is characterized as the question and an entity that is referencedby a portion of text that is characterized as an answer to the question;comparing the score associated with the relationship of the relationshiptype for the entity that is referenced by the one or more terms of thefirst portion of text that is characterized as the question and theentity that is referenced by the second portion of text that ischaracterized as the answer to the question and the one or more otherscores that are each associated with the relationship of therelationship type for the entity that is referenced by the one or moreterms of the first portion of text that is characterized as the questionand an entity that is referenced by a portion of text that ischaracterized as an answer to the question; and establishing, at anentity relationship model and based at least on the comparison, arelationship of the relationship type between the entity that isreferenced by the one or more terms of the first portion of text that ischaracterized as the question and the entity that is referenced by thesecond portion of text that is characterized as the answer to thequestion.
 5. The computer-implemented method of claim 1, whereinidentifying the entity that is referenced by the second portion of textthat is characterized as the answer to the question comprises:determining an entity class for the entity that is referenced by the oneor more terms of the first portion of text that is characterized as thequestion; determining a target entity class based on (i) the entityclass for the entity that is referenced by the one or more terms of thefirst portion of text that is characterized as the question, and (ii)the relationship type that is referenced by the one or more other termsof the first portion of the text that is characterized as the question;and identifying, as the entity that is referenced by the second portionof text that is characterized as the answer to the question, an entitythat is (i) referenced by the second portion of text that ischaracterized as the question, and (ii) matches the target entity class.6. The computer-implemented method of claim 1, wherein identifying (i)the first portion of text of the resource that is characterized as thequestion, and (ii) the second portion of text of the resource that ischaracterized as the answer to the question comprises: submitting theresource to a machine-learnt classifier that is configured to identifyportions of text that are characterized as questions in question andanswer (Q&A) website resources and portions of text that arecharacterized as answers in question and answer (Q&A) website resources;and receiving, from the machine-learnt classifier, information thatidentifies (i) the first portion of text of the resource that ischaracterized as the question, and (ii) the second portion of text ofthe resource that is characterized as the answer to the question.
 7. Asystem comprising: one or more computers and one or more storage devicesstoring instructions that are operable, when executed by the one or morecomputers, to cause the one or more computers to perform operationscomprising: obtaining a resource; identifying (i) a first portion oftext of the resource that is characterized as a question, and (ii) asecond portion of text of the resource that is characterized as ananswer to the question; identifying (i) an entity that is referenced byone or more terms of the first portion of text that is characterized asthe question, and (ii) an entity that is referenced by the secondportion of text that is characterized as the answer to the question;identifying a relationship type that is referenced by one or more otherterms of the first portion of the text that is characterized as thequestion, based at least on a comparison of the first portion of thetext that is characterized as the question and one or more templatesthat are each associated with a respective relationship type indicatinga match with a particular template; and adjusting a score associatedwith a relationship of the relationship type for the entity that isreferenced by the one or more terms of the first portion of text that ischaracterized as the question and the entity that is referenced by thesecond portion of text that is characterized as the answer to thequestion.
 8. The system of claim 7, wherein the resource is a questionand answer (Q&A) website resource.
 9. The system of claim 7, whereineach of the one or more templates is one of a surface-based template ora parser-based template.
 10. The system of claim 7, wherein theoperations comprise: aggregating the score associated with therelationship of the relationship type for the entity that is referencedby the one or more terms of the first portion of text that ischaracterized as the question and the entity that is referenced by thesecond portion of text that is characterized as the answer to thequestion and one or more other scores that are each associated with therelationship of the relationship type for the entity that is referencedby the one or more terms of the first portion of text that ischaracterized as the question and an entity that is referenced by aportion of text that is characterized as an answer to the question;comparing the score associated with the relationship of the relationshiptype for the entity that is referenced by the one or more terms of thefirst portion of text that is characterized as the question and theentity that is referenced by the second portion of text that ischaracterized as the answer to the question and the one or more otherscores that are each associated with the relationship of therelationship type for the entity that is referenced by the one or moreterms of the first portion of text that is characterized as the questionand an entity that is referenced by a portion of text that ischaracterized as an answer to the question; and establishing, at anentity relationship model and based at least on the comparison, arelationship of the relationship type between the entity that isreferenced by the one or more terms of the first portion of text that ischaracterized as the question and the entity that is referenced by thesecond portion of text that is characterized as the answer to thequestion.
 11. The system of claim 7, wherein identifying the entity thatis referenced by the second portion of text that is characterized as theanswer to the question comprises: determining an entity class for theentity that is referenced by the one or more terms of the first portionof text that is characterized as the question; determining a targetentity class based on (i) the entity class for the entity that isreferenced by the one or more terms of the first portion of text that ischaracterized as the question, and (ii) the relationship type that isreferenced by the one or more other terms of the first portion of thetext that is characterized as the question; and identifying, as theentity that is referenced by the second portion of text that ischaracterized as the answer to the question, an entity that is (i)referenced by the second portion of text that is characterized as thequestion, and (ii) matches the target entity class.
 12. The system ofclaim 7, wherein identifying (i) the first portion of text of theresource that is characterized as the question, and (ii) the secondportion of text of the resource that is characterized as the answer tothe question comprises: submitting the resource to a machine-learntclassifier that is configured to identify portions of text that arecharacterized as questions in question and answer (Q&A) websiteresources and portions of text that are characterized as answers inquestion and answer (Q&A) website resources; and receiving, from themachine-learnt classifier, information that identifies (i) the firstportion of text of the resource that is characterized as the question,and (ii) the second portion of text of the resource that ischaracterized as the answer to the question.
 13. A non-transitorycomputer-readable storage device storing software comprisinginstructions executable by one or more computers which, upon suchexecution, cause the one or more computers to perform operationscomprising: obtaining a resource; identifying (i) a first portion oftext of the resource that is characterized as a question, and (ii) asecond portion of text of the resource that is characterized as ananswer to the question; identifying (i) an entity that is referenced byone or more terms of the first portion of text that is characterized asthe question, and (ii) an entity that is referenced by the secondportion of text that is characterized as the answer to the question;identifying a relationship type that is referenced by one or more otherterms of the first portion of the text that is characterized as thequestion, based at least on a comparison of the first portion of thetext that is characterized as the question and one or more templatesthat are each associated with a respective relationship type indicatinga match with a particular template; and adjusting a score associatedwith a relationship of the relationship type for the entity that isreferenced by the one or more terms of the first portion of text that ischaracterized as the question and the entity that is referenced by thesecond portion of text that is characterized as the answer to thequestion.
 14. The computer-readable device of claim 13, wherein theresource is a question and answer (Q&A) website resource.
 15. Thecomputer-readable device of claim 13, wherein the operations comprise:aggregating the score associated with the relationship of therelationship type for the entity that is referenced by the one or moreterms of the first portion of text that is characterized as the questionand the entity that is referenced by the second portion of text that ischaracterized as the answer to the question and one or more other scoresthat are each associated with the relationship of the relationship typefor the entity that is referenced by the one or more terms of the firstportion of text that is characterized as the question and an entity thatis referenced by a portion of text that is characterized as an answer tothe question; comparing the score associated with the relationship ofthe relationship type for the entity that is referenced by the one ormore terms of the first portion of text that is characterized as thequestion and the entity that is referenced by the second portion of textthat is characterized as the answer to the question and the one or moreother scores that are each associated with the relationship of therelationship type for the entity that is referenced by the one or moreterms of the first portion of text that is characterized as the questionand an entity that is referenced by a portion of text that ischaracterized as an answer to the question; and establishing, at anentity relationship model and based at least on the comparison, arelationship of the relationship type between the entity that isreferenced by the one or more terms of the first portion of text that ischaracterized as the question and the entity that is referenced by thesecond portion of text that is characterized as the answer to thequestion.
 16. The computer-readable device of claim 13, whereinidentifying the entity that is referenced by the second portion of textthat is characterized as the answer to the question comprises:determining an entity class for the entity that is referenced by the oneor more terms of the first portion of text that is characterized as thequestion; determining a target entity class based on (i) the entityclass for the entity that is referenced by the one or more terms of thefirst portion of text that is characterized as the question, and (ii)the relationship type that is referenced by the one or more other termsof the first portion of the text that is characterized as the question;and identifying, as the entity that is referenced by the second portionof text that is characterized as the answer to the question, an entitythat is (i) referenced by the second portion of text that ischaracterized as the question, and (ii) matches the target entity class.17. The computer-readable device of claim 13, wherein identifying (i)the first portion of text of the resource that is characterized as thequestion, and (ii) the second portion of text of the resource that ischaracterized as the answer to the question comprises: submitting theresource to a machine-learnt classifier that is configured to identifyportions of text that are characterized as questions in question andanswer (Q&A) website resources and portions of text that arecharacterized as answers in question and answer (Q&A) website resources;and receiving, from the machine-learnt classifier, information thatidentifies (i) the first portion of text of the resource that ischaracterized as the question, and (ii) the second portion of text ofthe resource that is characterized as the answer to the question.